Dynamic Data Flow Analysis via Virtual Code Integration (aka The SpiderPig case)

نویسنده

  • Piotr Bania
چکیده

This paper addresses the process of dynamic data ow analysis using virtual code integration (VCI), often refered to as dynamic binary rewriting. This article will try to demonstrate all of the techniques that were applied in the SpiderPig project [15]. It will also discuss the main di erences between the methods that were employed and those used in other available software, as well as introducing other related work. SpiderPig 's approach was found to be very fast and was transparent enough for reliable and usable data ow analysis. It was created with the purpose of providing a tool which would aid vulnerability and security researchers with tracing and analyzing any necessary data and its further propagation through a program. At the time of writing this article, it is the authors opinion that SpiderPig o ers one of the most advanced solutions for data 1 ar X iv :0 90 6. 07 24 v1 [ cs .C R ] 3 J un 2 00 9 ow monitoring. At the current state it works on IA-32 platforms with Microsoft Windows systems and it supports FPU, SSE, MMX and all of the IA-32 general instructions. Furthermore it can be extended to cover other operating systems and architectures as well. SpiderPig also demonstrates the usage of a virtual code integration (VCI) framework which allows for modifying the target application code at the instruction level. By this I mean that the VCI framework allows for custom code insertion, original code modi cation and full customization of the original application's code. Instructions can be swapped out, deleted or modi ed at a whim, without corrupting the surrounding code and side-e ects of the modi cation are resolved. In the next sections, the most important and relevant techniques used in SpiderPig will be described.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Fully Integrated Method for Dynamic Rock Type Characterization Development in One of Iranian Off-Shore Oil Reservoir

Rock selection in modeling and simulation studies is usually based on two techniques; routinely defined rock types and those defined by special core analysis (SCAL). The challenge in utilizing these two techniques is that they are frequently assumed to be the same, but in practice, static rock-types (routinely defined) are not always representative of dynamic rock-types (SCAL defined) in the re...

متن کامل

Exploit Dynamic Data Flows to Protect Software Against Semantic Attacks

Unauthorized code modification based on reverse engineering is a serious threat for software industry. Virtual machine based code obfuscation is emerging as a powerful technique for software protection. However, the current code obfuscation techniques are vulnerable under semantic attacks which use dynamic profiling to transform an obfuscated program to construct a simpler program that is funct...

متن کامل

Forecasting flow discharge through time series analysis using SARIMA model for drought conditions, a case study of Jamishan River

Nowadays, water supply is more limited and providing water is more difficult due to increasing population and demand for water. Thus, due to rainfall shortage and impacts of drought, the need for forecasting monthly and annual rainfall and flow discharge through time series analysis is acutely felt. One of the key assumption in time series is their static condition. However, hydrological time s...

متن کامل

Financial Crisis and Steel Trade Integration in Asia and Pacific: A Static and Dynamic Analysis

The objective of this paper is to explore the effect of financial crisis on trade flows of steel industries in the major Asian-Pacific steel producing countries. Using a static and dynamic panel data analysis, we test the hypothesis that the global financial crisis has a negative effect on Asia-Pacific bilateral steel trade flows. We also examine the role of regional trade integration in bilate...

متن کامل

Quantitative Information-Flow Tracking for C and Related Languages

We present a new approach for tracking programs’ use of data through arbitrary calculations, to determine how much information about secret inputs is revealed by public outputs. Using a fine-grained dynamic bit-tracking analysis, the technique measures the information revealed during a particular execution. The technique accounts for indirect flows, e.g. via branches and pointer operations. Two...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • CoRR

دوره abs/0906.0724  شماره 

صفحات  -

تاریخ انتشار 2009